package com.ruoyi.shop.popularize.batch.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.mall.common.domain.DtsSeckillBatch;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * 秒杀商品列表Service接口
 * 
 * @author ruoyi
 * @date 2025-03-14
 */
public interface IDtsSeckillBatchService 
{
    /**
     * 查询秒杀商品列表
     * 
     * @param id 秒杀商品列表主键
     * @return 秒杀商品列表
     */
    public DtsSeckillBatch selectDtsSeckillBatchById(Long id);

    /**
     * 查询秒杀商品列表列表
     * 
     * @param dtsSeckillBatch 秒杀商品列表
     * @return 秒杀商品列表集合
     */
    public List<DtsSeckillBatch> selectDtsSeckillBatchList(DtsSeckillBatch dtsSeckillBatch);

    /**
     * 新增秒杀商品列表
     * 
     * @param dtsSeckillBatch 秒杀商品列表
     * @return 结果
     */
    public int insertDtsSeckillBatch(DtsSeckillBatch dtsSeckillBatch);

    /**
     * 修改秒杀商品列表
     * 
     * @param dtsSeckillBatch 秒杀商品列表
     * @return 结果
     */
    public int updateDtsSeckillBatch(DtsSeckillBatch dtsSeckillBatch);

    /**
     * 批量删除秒杀商品列表
     * 
     * @param ids 需要删除的秒杀商品列表主键集合
     * @return 结果
     */
    public int deleteDtsSeckillBatchByIds(Long[] ids);

    /**
     * 删除秒杀商品列表信息
     * 
     * @param id 秒杀商品列表主键
     * @return 结果
     */
    public int deleteDtsSeckillBatchById(Long id);

    //修改秒杀商品的状态为结束
    public int updateConclude(Long id);

    //根据规格id查询秒杀价格
    public List<DtsSeckillBatch> selectDtsSeckillBatchBySpecId(String specId);

    /**
     * 根据商品规格ID查询秒杀记录
     *
     * @param productId 商品规格ID
     * @return 秒杀记录
     */
    public DtsSeckillBatch selectDtsSeckillBatchByProductId(Integer productId);


    public AjaxResult addOrUpdate(@RequestBody Map<String, Object> data);
}
